feat(CategoryTheory/Sites): local sites #22817
Conversation
PR summary b4f07ded54
|
| File | Base Count | Head Count | Change |
|---|---|---|---|
| Mathlib.CategoryTheory.Limits.FunctorCategory.Shapes.Products | 423 | 426 | +3 (+0.71%) |
Import changes for all files
| Files | Import difference |
|---|---|
Mathlib.CategoryTheory.Limits.FunctorCategory.Shapes.Products |
3 |
Mathlib.CategoryTheory.Sites.GlobalSections (new file) |
962 |
Mathlib.CategoryTheory.Sites.LocalSite (new file) |
967 |
Declarations diff
+ LocalSite
+ LocalSite.from_terminal_mem_of_mem
+ Presheaf.codisc
+ Presheaf.codisc_isSheaf
+ Sheaf.codisc
+ Sheaf.codiscΓNatIsoId
+ Sheaf.fullyFaithfulCodisc
+ Sheaf.Γ
+ Sheaf.ΓCodiscAdj
+ Sheaf.ΓNatIsoCoyonedaObj
+ Sheaf.ΓNatIsoSectionsFunctor
+ Sheaf.ΓNatIsoSheafSections
+ constantSheafΓAdj
+ fullyFaithfulConstantSheaf
+ instance [HasWeakSheafify J A] [HasLimitsOfShape Cᵒᵖ A] : (constantSheaf J A).IsLeftAdjoint
+ instance [HasWeakSheafify J A] [HasLimitsOfShape Cᵒᵖ A] : (Γ J A).IsRightAdjoint
+ instance [LocalSite J] : (codisc.{u,v,max u v w} J).Faithful
+ instance [LocalSite J] : (codisc.{u,v,max u v w} J).Full
+ instance [LocalSite J] : (codisc.{u,v,max u v w} J).IsRightAdjoint
+ instance [LocalSite J] : (Γ J (Type max u v w)).IsLeftAdjoint
+ instance {C : Type u} [Category.{v} C] [HasTerminal C] : LocalSite (trivial C)
+ limNatIsoSectionsFunctor
+ sectionsFunctorNatIsoCoyoneda
+ sheafSectionsNatIsoEvaluation
+ terminalObjIso
++ instance [HasWeakSheafify J (Type max u v w)] [LocalSite J] :
You can run this locally as follows
## summary with just the declaration names:
./scripts/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/declarations_diff.sh long <optional_commit>The doc-module for script/declarations_diff.sh contains some details about this script.
No changes to technical debt.
You can run this locally as
./scripts/technical-debt-metrics.sh pr_summary
- The
relativevalue is the weighted sum of the differences with weight given by the inverse of the current value of the statistic. - The
absolutevalue is therelativevalue divided by the total sum of the inverses of the current values (i.e. the weighted average of the differences).
| variable {C : Type u} [Category.{v} C] (J : GrothendieckTopology C) | ||
|
|
||
| /-- A local site is a site that has a terminal object with only a single covering sieve. -/ | ||
| class LocalSite extends HasTerminal C where |
There was a problem hiding this comment.
As this is a Prop, we usually like to use the prefix Is. This should probably go into the GrothendieckTopology namespace, so that we may write J.IsLocal, or J.IsLocalSite.
|
This PR/issue depends on: |
| * `fullyFaithfulConstantSheaf`: on local sites, the constant sheaf functor is fully faithful. | ||
| All together this shows that for local sites `Sheaf J (Type max u v w)` forms a local topos, but | ||
| since we don't yet have local topoi this can't be stated yet. | ||
| -/ |
There was a problem hiding this comment.
Could you add a reference where this notion of local site is used?
|
Migrated to #41083. |
Defines local sites and shows that sheaves of types on them form a local topos, in that the global sections functor
Sheaf.Γhas a right adjointSheaf.codiscthat is fully faithful.